﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Apa.Control;
using Apa.Data;
namespace Apa.Forms
{
    public partial class frmConsultarLicencias : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Controladora control = new Controladora();

            gvLicencias.DataSource= control.consultarInfo();
            gvLicencias.DataBind();
            
        }

        protected void btEliminar_Click(object sender, EventArgs e)
        {
            Controladora control=new Controladora();
            try
            {
                tblIes ies = control.consultarIes(tbInstitucion.Text);
                tblPrograma programa = control.consultarProgramaXNombre(ies.id, tbNombrePrograma.Text);

                List<tblUsuario> usuarios = control.consultarUsuarios(programa.id).ToList();
                tblModulo modulo= control.consultarModulo(tbModulo.Text);
                foreach (tblUsuario usuario in usuarios)
                {

                    //bool eliminar = control.eliminarUsuario(usuario.id);
                    bool eliminar = control.eliminarUsuarioLicencia(programa.id, usuario.id, modulo.id);

                }
                List<tblLicencia> licencias = control.consultarLicenciaXPrograma(programa.id);

                if (licencias != null)
                {
                    if (licencias.Count <= 1)
                    {
                        control.eliminarPrograma(programa.id);
                    }

                }
                Page.ClientScript.RegisterStartupScript(this.GetType(), "script", "alert('Se ha eliminado el registro exitosamente');", true);
              
            }
            catch (Exception)
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "script", "alert('Se ha producido un error al Eliminar el registro');", true);
              

            }
            tbInstitucion.Text = "";
            tbNombrePrograma.Text = "";

            gvLicencias.DataSource = control.consultarInfo();
            gvLicencias.DataBind();
        }

        protected void gvLicencias_RowCommand(object sender, GridViewCommandEventArgs e)
        {

            if (e.CommandName == "Select")
            {
                 Int16 num = Convert.ToInt16(e.CommandArgument);

                 // tbInstitucion.Text = gvLicencias.Rows[num].Cells[2].Text;
                 tbInstitucion.Text = HttpUtility.HtmlDecode(gvLicencias.Rows[num].Cells[2].Text);

                 try
                 {
                     //tbNombrePrograma.Text = gvLicencias.Rows[num].Cells[6].Text;
                     tbNombrePrograma.Text =  HttpUtility.HtmlDecode(gvLicencias.Rows[num].Cells[6].Text);
                     tbModulo.Text = HttpUtility.HtmlDecode(gvLicencias.Rows[num].Cells[8].Text);
                 }
                 catch (Exception)
                 {

                 }
                 
            }
        }
    }
}